/**
 * @author：Wu.Zheng
 * @createTime：2013年11月15日
 */
package com.wondream.myframework.app.common.util.email;


import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;

import java.io.File;
import java.io.IOException;
import java.io.StringWriter;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;

public class FreeMarkerUtils {

	
	public static void main(String[] args) throws Exception {
		// 创建Freemarker配置实例
		Configuration cfg = new Configuration();

		cfg.setDirectoryForTemplateLoading(new File("e:\\temp"));
		// cfg.setObjectWrapper(new DefaultObjectWrapper());
		// 获取模板（template）
		Template template = cfg.getTemplate("mail.ftl");
		// 建立数据模型（Map）
		Map<String, Object> root = new HashMap<String, Object>();

		StringWriter out = new StringWriter();
		template.process(root, out);
		out.flush();
		String temp = out.toString();
		System.out.println(temp);
	}
	
	
	public static String generaotr(String templateFilePath, String templateFileName, String custId,
					String custName, String zipPwd,String pfxPwd) {
		try {
			Configuration cfg = new Configuration();
			cfg.setDefaultEncoding("UTF-8");
			cfg.setDirectoryForTemplateLoading(new File(templateFilePath));
			// cfg.setObjectWrapper(new DefaultObjectWrapper());
			// 获取模板（template）
			Template template = cfg.getTemplate(templateFileName, "UTF-8");
			Date d = new Date();  
			System.out.println(d);  
			// 建立数据模型（Map）
			Map<String, Object> root = new HashMap<String, Object>();
			root.put("custName", custName);
			root.put("custId", custId);
			root.put("zipPwd", zipPwd);
			root.put("pfxPwd", pfxPwd);
	
			StringWriter out = new StringWriter();
			template.process(root, out);
			out.flush();
			String result = out.toString();
			System.out.println("输出结果:\n" + result);
			return result;
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			return null;
		} catch (TemplateException te) {
			te.printStackTrace();
			return null;
		}
	}

}
